vlwkaos' digital garden

Firebase Rule

참조 문서

https://firebase.google.com/docs/rules/basics https://firebase.google.com/docs/firestore/security/rules-structure https://firebase.google.com/docs/rules/rules-and-auth

상황

Collection의 모든 하위 document에 대해 규칙 지정

match /{collectionName}/{document=**} {
    allow read: if true;
    allow write: if true;
}

Collection에 바로 포함되는 document에 대해 규칙 지정

match /{collectionName}/{documentName} {
    ...
}

Write권한은 다음으로 나뉨

create, update, delete에 대해 별개의 규칙을 적용 가능함.

 allow create: true;
 allow update, delete: true;

로그인 정보가 있을 시에만 허용

allow read: if request.auth != null;

로그인 id가 일치할 때만 허용

여기서 request.resource.data를 통해 document참조가 가능함. document 생성시에 현재 로그인된 유저의 id를 저장해두고 나중에 참조해서 비교한다.

allow read: if request.auth.uid == request.resource.data.authorUserId;

Referred in

Firebase Rule